shadowsocks-libev: ss-rules: resolve server names before adding to ipset
authorYousong Zhou <[email protected]>
Wed, 30 Aug 2017 02:07:06 +0000 (10:07 +0800)
committerYousong Zhou <[email protected]>
Wed, 30 Aug 2017 02:13:29 +0000 (10:13 +0800)
ipset command line utility supports ranges of address: IP-IP, but the
dash character is also valid character in host names.  If we have a
remote server ss-00.example.com, ipset may complain that

    ipset v6.32: Syntax error: cannot parse ss: resolving to IPv4 address failed

Signed-off-by: Yousong Zhou <[email protected]>
net/shadowsocks-libev/Makefile
net/shadowsocks-libev/files/ss-rules

index 969868f07cef7cbd28c6b4fcc6e4c8267b98cdfa..1fbee8d60babd2fc81e1b61660683a81702ec617 100644 (file)
@@ -14,7 +14,7 @@ include $(TOPDIR)/rules.mk
 #
 PKG_NAME:=shadowsocks-libev
 PKG_VERSION:=3.0.8
-PKG_RELEASE:=9
+PKG_RELEASE:=10
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://github.com/shadowsocks/shadowsocks-libev/releases/download/v$(PKG_VERSION)
@@ -81,7 +81,7 @@ define Package/shadowsocks-libev-ss-rules
   SUBMENU:=Web Servers/Proxies
   TITLE:=shadowsocks-libev ss-rules
   URL:=https://github.com/shadowsocks/shadowsocks-libev
-  DEPENDS:=+ip +ipset +iptables-mod-tproxy +shadowsocks-libev-ss-redir +shadowsocks-libev-config
+  DEPENDS:=+ip +ipset +iptables-mod-tproxy +resolveip +shadowsocks-libev-ss-redir +shadowsocks-libev-config
 endef
 
 define Package/shadowsocks-libev-ss-rules/install
index d0de77a0b546944768a1d4b83b99d745ff61892c..58ce2c279814d90c9a2939e4cb809bc14c359ee5 100755 (executable)
@@ -112,6 +112,7 @@ ss_rules_parse_args() {
                __errmsg "Please install iptables-mod-conntrack-extra with opkg"
                return 1
        fi
+       o_remote_servers="$(for s in $o_remote_servers; do resolveip "$s"; done)"
 }
 
 ss_rules_flush() {